package com.syh.jn.scm.service.api.operation.system;

import com.syh.jn.scm.dto.operation.system.permission.PermissionMto;
import com.syh.jn.scm.dto.operation.system.permission.PermissionSto;
import com.syh.jn.scm.dto.operation.system.permission.PermissionVo;
import com.syh.jn.scm.service.core.BaseService;

import java.util.List;

public interface PermissionService extends BaseService<PermissionSto,PermissionMto,PermissionVo,Long> {

	public List<PermissionVo> getPermissionByRoleId(Long roleId);

	/**
	 * 根据系统权限类型获取权限列表
	 * @param systemType
	 * @return
	 */
	public List<PermissionVo> getPermissionBySystemType(Short systemType);

	/**
	 *
	 * @param stos 权限集合
	 * @return 数据库持久化成功的数量
	 */
	public int batchSave(List<PermissionSto> stos);

	List<PermissionVo> getPermsByMenu(Long id);

	/**
	 * 批量停用权限
	 *
	 * @param ids
	 */
	public void batchDiscardPermission(List<Long> ids);
}

